NC Machining
Simulating numerically controlled (NC) milling or other types of machining is of importance in computer aided design (CAD) and computer aided manufacturing (CAM). During simulation, a workpiece model interacts with a computer representation of a tool and its motions.
The workpiece model and tool representation can be visualized during the simulation to improve productivity, tool path planning, detect potential collisions between parts, such as the workpiece and the tool holder, and to verify the final shape of the workpiece. The tool motions are typically implemented using numerical control programming language, also known as preparatory code or G-Codes, see, e.g., the RS274D and DIN 66025/ISO6983 standards.
During milling, the tool moves relative to the workpiece according to a prescribed tool motion, referred to herein as a tool path. The path contains information about the relative position, orientation, and other shape data of the tool. As the tool moves along the tool, the tool carves out a “swept volume.” During milling, as the tool moves along the path, a portion of the workpiece that is intersected by the swept volume is removed. This removal of the material can be modeled computationally as a constructive solid geometry (CSG) difference operation.
Swept volumes can be represented and approximated by polygonal methods, Z-buffer, depth pixel (dexel) method and voxel-based representations. Swept volumes of simple shapes moving along simple paths can sometimes be represented analytically, as described in U.S. Pat. No. 4,833,617. However, those methods do not generalize to complex shapes and complex tool paths.
Models of polygonal shapes can be encoded in a spatial hierarchy for efficient editing via CSG operations. The accuracy of those methods is limited by the size of the smallest voxel used to represent the swept volumes. Thus, those methods may either have limited accuracy or have prohibitive processing times and memory requirements for generating high precision models of swept volumes, or both. In addition, methods that approximate the swept volume as a series of discrete time steps have limited precision between the discrete time steps, and are subject to aliasing artifacts.
Distance fields are an effective representation for rendering and editing shapes, as described in U.S. Pat. Nos. 6,396,492, 6,724,393, 6,826,024, and 7,042,458. Distance fields are a form of implicit functions that represent an object. In particular, a distance field is a scalar field d that gives a shortest distance to the surface of the object from any point in space. A point at which the distance field is zero is on the surface of the object. The set of points on the surface of the object collectively describe the boundary of the object, also known as the d=0 iso-surface. The distance field of an object is positive for points inside the object, and negative for points outside the object.
Adaptively sampled distance fields (ADFs) use detail-directed sampling to provide a much more space and time efficient representation of distance fields than is obtained using regularly sampled distance fields. ADFs store the distance field as a spatial hierarchy of cells. Each cell contains distance data and a reconstruction method for reconstructing a portion of the distance field associated with the cell. Distance data can include the value of the distance field, as well as the gradient and partial derivatives of the distance field. The distance field within a cell can be reconstructed only when needed to reduce memory and computational complexity.
Alternatively, the edited shape can be represented implicitly as a composite ADF (CADF). The CADF is generated to represent the object, where the CADF includes a set of cells arranged in the spatial hierarchy. Each cell in the CADF includes a subset of the set of geometric element distance field functions and a reconstruction method for combining the subset of geometric element distance field functions to reconstruct a composite distance field of a portion of the object represented by the cell. Each distance field in the subset of distance fields forms a part of the boundary of the object within the cell, called the composite boundary.
High speed machining is important in the fields of die and mold manufacturing, aerospace and automotive industries. Characteristics of high speed machining are high spindle speed (rotational speed of cutting tool), high feedrate (rate at which the cutting tool moves), high machining efficiency and accuracy. The mechanical parts can include faces parallel or normal to a plane and free-form parts require a 2.5D rough milling of a workpiece, making pocket milling an important milling operations. In pocket milling, the material is removed from a predefined shape (pocket) with defined dimension layer by layer by flat-end mill tool.
The feedrate depends on the geometry of the tool path, thus the path strongly influences manufacturing time and cost. The general objective in pocket milling and material removal processes in general is to find a good/optimal tool path.
Two commonly used methods for tool path generation, based on zigzag and contour-parallel paths milling, are described in “A mapping-based spiral cutting strategy for pocket machining,” Xu, Int J Adv Manuf Technol, 2012 and “High speed machining tool path generation for pockets using level sets,” Zhunag, International Journal of Production Research, 2009.
Another method described in U.S. Pat. No. 6,591,158 uses the solution of Laplace's equation defined for the pocket region. A level sets of the principal eigenfunction to define a smooth low-curvature spiral path in a pocket interior to one that conforms to the pocket boundary. The spiral tool path generation method based on solving the partial differential equation has difficulty in controlling the distance between two level-set curves. The method is based on finite element solutions of a PDE (Partial Differential Equation) including discretization of the pocket region into a triangular mesh with many elements, which result in the complicated way to connect concentric closed curves.
Another method described in U.S. Pat. No. 6,591,158 forms a spiral tool path by determining a plurality of relatively low-curvature nested contours that are internal to the boundary of the pocket to be formed, and spiraling between the contours. The nested contours arc determined from a mathematical function. Some methods described in U.S. Pat. Nos. 7,451,013, 7,577,490, 7,831,332 and 8,000,834 use constant engagement milling for generating a tool path for milling a pocket based on controlling engagement angle. However, such milling strategies force the milling cutter to execute sharp turns resulting in widely varying cutter engagement. Such variations in tool engagement cause spikes in tool load producing undesirable effects such as shorter tool life, chatter vibrations and even tool breakage.
The method described in U.S. Pat. No. 7,877,182 for creating spiral swath patterns for convex polygon shaped field boundaries a computationally efficient method for generating a spiral swath pattern for a region of a field bounded by a convex polygon is described. The method automatically generates curved portions for the swept trajectory having radii of curvature greater than a minimum turning radius based on the minimum turning radius and a definition of the field boundary.
In high performance milling, the technology described in U.S. Pat. No. 8,295,972 and U.S. Application 20100087949 for milling selected portions of a workpiece by a cutting, tool of a numerical control machine is described in order to reduce machining time and load. When milling along a path of constant curvature with a constant feed rate, a constant material removal rate is established.
However, determining the path of the tool machining the pocket shape remains a difficult problem in the art of NC machining.